1. Field of the Invention
The present invention relates to an address-translating connection device , and more particularly, to an address-translating connection device which is required in connecting a Local Area Network (LAN) using private addresses to a network using global addresses. This address-translating connection device translates network addresses for packet communication between the two types of networks.
2. Description of the Related Art
Communications through the Internet are carried out by Transmission Control Protocol/Internet Protocol (TCP/IP) by using public Internet Protocol (IP) addresses assigned to respective terminals. The public IP addresses are global addresses which are uniquely assigned to computers connected to the Internet which is comprised of a large number of networks connected to each other. Due to the addressing scheme used for IP addresses there are a limited number of available addresses. With the current rate of growth in machines connected to the Internet, it will not be long until the pool of remaining available addresses will be exhausted.
However, within each LAN, private IP addresses can be used. RFC (Request for Comments) 1597 defines "the private IP addresses" as IP addresses "10.0.0.0 to 10.255.255.255, 172.16.0.0 to 172.31.255.255, and 192.168.0.0 to 192.168.255.255", which can be freely assigned to computers inside each LAN (hereinafter, "the public IP addresses" will be simply referred to as "the IP addresses" while "the private IP addresses" as "the private addresses"). Since the same private address used in one LAN can be used within another LAN, the shortage of available global IP addressees is mitigated. However, the private addressees cannot be used outside LANs, since the same address used in one LAN can be also used in another LAN.
As described above, in the global network using IP addresses, the private addresses cannot be used in the address field within a packet. When a terminal having an IP address assigned thereto communicates with another having a private address assigned thereto, an address translation is required at an intermediate point of the communication path.
Conventionally, when a terminal having a private address assigned thereto within a LAN intends to communicate via the Internet with another terminal using a global IP address, an address-translating device is required to assign an IP address to the internal or sender terminal from the pool of IP addresses available to the LAN when the internal terminal logs on to the Internet, and to maintain a table that correlates the private address of the internal terminal to the assigned IP address of the same. Data is sent out to the receiver or external terminal using the assigned IP address of the internal terminal as the sender address. When receiving data from the external terminal connected to the Internet, the address-translating device carries out address translation with reference to the stored table of the correlation between the assigned IP address and the private address. This method enables an IP address to be dynamically assigned to a private address of an internal terminal within a LAN, so that the terminal can communicate with an external terminal outside of the LAN.
When an external terminal outside of the LAN intends to communicate with an internal terminal having a private address within the LAN, the address-translating device translates an IP address in a packet from the external terminal to the private address of the internal terminal, which is fixedly correlated beforehand to the IP address, to thereby permit the external terminal to communicate with the internal terminal.
However, in the case of external terminals intending to communicate with internal terminals within the LAN, the IP addresses assigned or available to the LAN are fixedly correlated beforehand to respective private addresses within the LAN, and hence the number of internal terminals within the LAN with which external terminals can communicate is limited to the number of the IP addresses available to the LAN.
Conventionally, the Dynamic Host Configuration Protocol (DHCP) system dynamically assigns IP addresses to terminals logged on to the LAN. The DHCP system is cooperative with the Domain Name System (DNS) to realize a function that the DNS server returns an IP address dynamically assigned to an internal terminal in response to an inquiry as to the IP address. However, this function is not cooperative with an address translation capability that is implemented using a Network Address Translator (NAT), a PROXY or the like. More specifically, the DHCP and DNS in cooperation can neither carry out updating of the address translation table employed in the address translation, nor assign an IP address to an internal terminal when the DNS server is inquired as to the IP address of the internal terminal.